A scripting tool of a server running application software modules provides a scripting interface that a developer can use to interact with and/or configure the server. Here, the scripting interface can be, but is not limited to, a command-line scripting shell (window), a graphical user interface (GUI), a browser, and other suitable interface. Using the scripting tool, a user (an administrator and/or operator) of the server can perform administrative tasks and initiate configuration and/or runtime information changes on the server. Here the server can be, but is not limited to, a web server, an application server, a database server, an administrative server, and other suitable server.
There has been an essential need for a scripting tool that would allow developers and system administrators to perform both simple and complex changes to their server configurations reliably and interactively. Some current scripting tools only allow a user to connect to the server, execute one instruction, and then disconnect, without reserving any state information of the server for subsequent actions. Since such “one-action-connection” approach often performs only one action per connection, they may not be able to capture repeatable and/or sequential configuration steps such as loops, ifs, and other flow-control constructs that the user needs to perform when configuring a server. In addition, since establishing, authenticating each connection takes time, these tools are often slow and inefficient.